如何在 Python 中创建一个空列表 | 您所在的位置:网站首页 › python 构建等差数列 › 如何在 Python 中创建一个空列表 |
原文:Python Empty List Tutorial – How to Create an Empty List in Python,作者:Estefania Cassingena Navone 如果你想学习如何在 Python 中高效地创建一个空列表,那么这篇文章就是为你准备的。 你将学习: 如何使用方括号 [] 创建一个空列表如何使用 list() 创建一个空列表它们的用例它们的效率如何(一个比另一个快!)我们将使用 timeit 模块来比较它们我们开始吧!✨ 🔹 使用方括号你可以使用一对空方括号创建一个空列表,如下所示: 💡 提示:我们将空列表分配给一个变量,以便稍后在我们的程序中使用它。 例如: num = []空列表的长度为 0,你可以在此处看到: >>> num = [] >>> len(num) 0空列表是假值,这意味着它们在布尔上下文中被评估为 False: >>> num = [] >>> bool(num) False给一个空列表添加元素你可以使用 append() 和 insert() 方法将元素添加到空列表中: append() 将元素添加到列表的末尾insert() 在你选择的列表的特定索引处添加元素由于列表可以是真值或假值,具体取决于它们在评估时是否为空,因此你可以在如下条件语句中使用它们: if num: print("This list is not empty") else: print("This list is empty")这段代码的输出是: This list is empty因为列表是空的,所以它的计算结果为 False。 一般来说: 如果列表不为空,则计算结果为 True,因此执行 if 子句如果列表为空,则计算结果为 False,因此执行 else 子句例如:在下面的示例中,我们创建一个空列表并将其分配给变量 num。 然后,使用 for 循环,我们将一系列元素(整数)添加到最初为空的列表中: >>> num = [] >>> for i in range(3, 15, 2): num.append(i)我们检查变量的值以查看是否成功追加了元素,并确认列表不再为空: >>> num [3, 5, 7, 9, 11, 13]💡 提示:我们通常使用 append() 将第一个元素添加到空列表中,但你也可以调用 insert() 方法以索引 0 添加此元素: >>> num = [] >>> num.insert(0, 1.5) # add the float 1.5 at index 0 >>> num [1.5]🔸 使用 list() 构造函数或者,你可以使用类型构造函数 list() 创建一个空列表,它会创建一个新的列表对象。 根据 Python 文档: 如果没有给出参数,构造函数会创建一个新的空列表,[]。💡 提示:这会在内存中创建一个新的列表对象,并且由于我们没有将任何参数传递给 list(),因此将创建一个空列表。 例如: num = list()这个空列表的长度为 0,如下所示: >>> num = list() >>> len(num) 0当它为空时它是一个假值(它在布尔上下文中为 False): >>> num = list() >>> bool(num) False示例:这是一个函数列表,因此我们可以给它添加元素: >>> num = list() >>> for i in range(3, 15, 2): num.append(i)结果将是一个非空列表,如下所示: >>> num [3, 5, 7, 9, 11, 13]🔹 用例我们通常使用 list() 从现有的可迭代对象(例如字符串、字典或元组)创建列表。你通常会看到方括号 [] 用于在 Python 中创建空列表,因为这种语法更简洁、更快。🔸 效率等等!我刚刚告诉过你 [] 比 list() 快...... 但是快多少呢? 让我们使用 timeit 模块检查它们的时间效率。 要在你的 Python 程序中使用这个模块,你需要导入它: >>> import timeit具体来说,我们将使用该模块中的 timeit 函数,你可以使用以下语法调用它: 💡 提示:代码重复多次,以减少可能由外部因素引起的时间差异,例如在特定时刻可能正在运行的其他进程。这使得比较的结果更可靠。 🚦 在你的标记上......设置......准备好了!这是代码和输出: 首先,我们导入模块。 >>> import timeit然后,我们开始测试每个语法。 测试 []:>>> timeit.timeit('[]', number=10**4) 0.0008467000000109692测试 list():>>> timeit.timeit('list()', number=10**4) 0.002867799999989984💡 提示:请注意,你要计时的代码必须用单引号 '' 或双引号 "" 括起来。timeit 函数返回的时间以秒为单位。 比较结果: []: 0.0008467000000109692list(): 0.002867799999989984可以看到 [] 比 list() 快得多。在这个测试中有大约 0.002 秒的差异: >>> 0.002867799999989984 - 0.0008467000000109692 0.0020210999999790147我敢肯定你现在一定会问这个问题:做同样的事情,为什么 list() 的效率低于 []? 嗯...list() 比较慢,因为它需要查找函数的名称,调用它,然后在内存中创建列表对象。相比之下,[] 就像一个“捷径”,不需要那么多中间步骤就可以在内存中创建列表。 这个时间差异不会对你的程序的性能产生太大影响,但是很高兴知道哪个更有效以及它们在幕后是如何工作的。 🔹 总结你可以使用一对空方括号 [] 或类型构造函数 list() 创建一个空列表,这是一个内置函数,可在未传递参数时创建一个空列表。 方括号 [] 在 Python 中常用来创建空列表,因为它更快更简洁。 我真的希望你喜欢我的文章并觉得它很有帮助。现在你可以在 Python 项目中创建空列表了。欢迎查看我的在线课程,在推特上关注我。⭐️ |
CopyRight 2018-2019 实验室设备网 版权所有 |